Bounding Worst Case Garbage Collection Time for Embedded Real-Time Systems
نویسندگان
چکیده
Execution of programs with various data structures often requires dynamic memory management based on garbage collection for better productivity, robustness, and program integrity. In spite of its benefits, garbage collection has not been widely used in embedded real-time systems partly because it often causes unpredictable pause delay. Guaranteeing real-time operations with garbage collection aims to bound and estimate the worst case computation time of garbage collector as well as application tasks. We introduce a new technique for bounding and estimating the worst case garbage collection time in light of task scheduling. Since the worst case live memory is the dominant factor to determine the worst case garbage collection time, we quantify the worst case live memory using the states of periodic tasks. We also present a predictable real-time copying collection algorithm in order to assess the effectiveness of the proposed approach. Performance evaluation shows that the proposed approach provides a safe and effective bound on the garbage collection time, thus reducing the upper bound of live memory size by up to 35 % compared with the trivial bound. It also demonstrates that our algorithm can accomplish 7 14 % reduction in the memory requirement.
منابع مشابه
Joint scheduling of garbage collector and hard real-time tasks for embedded applications
Programs with complex data structures often require dynamic memory management based on automatic memory reclamation (garbage collection). A major problem in adopting garbage collection for embedded real-time systems is that it often causes unpredictable pauses and that, as a result of such delays, hard real-time tasks may miss their deadlines. In this paper, we propose a new real-time garbage c...
متن کاملAutomatic Memory Management for Embedded Real-Time Java Processor Jpor-32
Currently, Java has been gradually applied in embedded real-time areas like robotics, control system, etc. owning to its advantages like robustness, security, etc. In order to improve the performance of Java’s execution engine for embedded real-time applications, JPOR-32, an embedded real-time Java processor, is designed. Based on it, this paper presents the automatic memory management (AMM) me...
متن کاملScheduling Garbage Collection in Embedded Systems
The complexity of systems for automatic control and other safety-critical applications grows rapidly. Computer software represents an increasing part of the complexity. As larger systems are developed, we need to find scalable techniques to manage the complexity in order to guarantee high product quality. Memory management is a key quality factor for these systems. Automatic memory management, ...
متن کاملOverview of Real-Time Java Computing
This paper presents a complete survey of recent techniques that are applied in the field of real-time Java computing. It focuses on the issues that are especially important for hard real-time applications, which include time predictable garbage collection, worst-case execution time analysis of Java programs, real-time Java threads scheduling and compiler techniques designed for real-time purpos...
متن کاملPredicting Time and Memory Demands of Object-Oriented Programs
Embedded computer systems are subject to a multitude of requirements. These include real-time requirements, that is, such computers must respond to external events within limited time. Many systems, such as satellites and telephone switches, must also operate unattended for long periods of time. They must not fail due to defective software. Modern object-oriented programming languages, particul...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000